home *** CD-ROM | disk | FTP | other *** search
- ;
- ; PureBasic Demo V1.30 generated code
- ;
- ; © 2000 Fantaisie Software
- ;
- MOVEM.l d0-d7/a0-a6,-(a7)
- ;
- ; CreateBank()
- ;
- MOVEQ #34,d0
- JSR _PB_AllocVec
- MOVE.l d0,a4
- ;
- ; OpenAmigaLibs()
- ;
- MOVE.l a6,6(a4)
- LEA.l _GraphicsName(pc),a1
- MOVEQ #0,d0
- JSR -552(a6)
- MOVE.l d0,10(a4)
- LEA.l _IntuitionName(pc),a1
- MOVEQ #0,d0
- JSR -552(a6)
- MOVE.l d0,14(a4)
- LEA.l _DosName(pc),a1
- MOVEQ #0,d0
- JSR -552(a6)
- MOVE.l d0,18(a4)
- BRA _ALib_Suite
- _IntuitionName
- dc.b "intuition.library",0
- _DosName
- dc.b "dos.library",0
- _GraphicsName
- dc.b "graphics.library",0,0
- _ALib_Suite
- ;
- ; InitPBLibBank()
- ;
- LEA.l _PBLibBank,a0
- MOVE.l a0,d1
- LEA.l _PBLibBankOffset(pc),a0
- MOVE.l #3,d0
- MOVE.l a4,a1
- ADD.l #22,a1
- _PBLibLoop
- MOVE.l (a0)+,(a1)
- ADD.l d1,(a1)+
- SUBQ #1,d0
- BNE _PBLibLoop
- BRA _PBLibNext
- _PBLibBankOffset
- dc.l 160
- dc.l 242
- dc.l 586
- _PBLibNext
- ;
- ; InitString()
- ;
- MOVE.l #5000,d0
- JSR _PB_AllocVec
- MOVE.l d0,a3
- MOVE.l d0,-(a7)
- MOVEQ #0,d0
- MOVEQ #40,d1
- MOVE.l d1,d2
- MOVE.l $4,a6
- JSR -696(a6)
- MOVE.l d0,(a4)
-
- ;
- ; ***********************************
- ;
- ; Screen example file for PureBasic
- ;
- ; © 1999 - Fantaisie Software -
- ;
- ; ***********************************
- ;
- ;
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S1,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf1
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S2,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S3,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S4,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S5,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S6,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S7,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S8,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf2
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf2
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S9,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S10,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf3
- ; PrintN("Workbench screen found !")
- LEA.l _S11,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S12,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S13,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf4
- _EndIf3
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S14,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf4
- ; EndIf
- _EndIf1
- ; PrintN("Press the mouse to quit")
- LEA.l _S15,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S16,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf5
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S17,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S18,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S19,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S20,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S21,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S22,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S23,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf6
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf6
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S24,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S25,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf7
- ; PrintN("Workbench screen found !")
- LEA.l _S26,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S27,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S28,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf8
- _EndIf7
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S29,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf8
- ; EndIf
- _EndIf5
- ; PrintN("Press the mouse to quit")
- LEA.l _S30,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S31,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf9
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S32,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S33,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S34,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S35,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S36,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S37,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S38,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf10
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf10
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S39,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S40,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf11
- ; PrintN("Workbench screen found !")
- LEA.l _S41,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S42,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S43,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf12
- _EndIf11
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S44,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf12
- ; EndIf
- _EndIf9
- ; PrintN("Press the mouse to quit")
- LEA.l _S45,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S46,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf13
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S47,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S48,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S49,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S50,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S51,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S52,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S53,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf14
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf14
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S54,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S55,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf15
- ; PrintN("Workbench screen found !")
- LEA.l _S56,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S57,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S58,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf16
- _EndIf15
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S59,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf16
- ; EndIf
- _EndIf13
- ; PrintN("Press the mouse to quit")
- LEA.l _S60,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S61,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf17
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S62,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S63,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S64,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S65,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S66,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S67,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S68,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf18
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf18
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S69,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S70,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf19
- ; PrintN("Workbench screen found !")
- LEA.l _S71,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S72,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S73,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf20
- _EndIf19
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S74,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf20
- ; EndIf
- _EndIf17
- ; PrintN("Press the mouse to quit")
- LEA.l _S75,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S76,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf21
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S77,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S78,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S79,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S80,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S81,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S82,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S83,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf22
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf22
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S84,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S85,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf23
- ; PrintN("Workbench screen found !")
- LEA.l _S86,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S87,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S88,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf24
- _EndIf23
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S89,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf24
- ; EndIf
- _EndIf21
- ; PrintN("Press the mouse to quit")
- LEA.l _S90,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S91,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf25
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S92,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S93,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S94,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S95,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S96,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S97,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S98,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf26
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf26
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S99,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S100,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf27
- ; PrintN("Workbench screen found !")
- LEA.l _S101,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S102,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S103,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf28
- _EndIf27
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S104,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf28
- ; EndIf
- _EndIf25
- ; PrintN("Press the mouse to quit")
- LEA.l _S105,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S106,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf29
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S107,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S108,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S109,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S110,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S111,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S112,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S113,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf30
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf30
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S114,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S115,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf31
- ; PrintN("Workbench screen found !")
- LEA.l _S116,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S117,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S118,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf32
- _EndIf31
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S119,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf32
- ; EndIf
- _EndIf29
- ; PrintN("Press the mouse to quit")
- LEA.l _S120,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S121,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf33
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S122,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S123,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S124,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S125,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S126,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S127,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S128,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf34
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf34
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S129,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S130,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf35
- ; PrintN("Workbench screen found !")
- LEA.l _S131,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S132,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S133,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf36
- _EndIf35
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S134,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf36
- ; EndIf
- _EndIf33
- ; PrintN("Press the mouse to quit")
- LEA.l _S135,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S136,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf37
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S137,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S138,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S139,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S140,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S141,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S142,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S143,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf38
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf38
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S144,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S145,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf39
- ; PrintN("Workbench screen found !")
- LEA.l _S146,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S147,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S148,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf40
- _EndIf39
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S149,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf40
- ; EndIf
- _EndIf37
- ; PrintN("Press the mouse to quit")
- LEA.l _S150,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- JMP _PB_EOP
- ; InitScreen(1) ; We will need 2 screens
- MOVEQ #1,d0
- MOVE.l 6(a4),a6
- MOVE.l 30(a4),a5
- JSR -252(a5)
- ; If FindScreen(0,"") ; Find de default public screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S151,a0
- MOVEQ #0,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf41
- ; Print("Screen address: ") : PrintNumberN(ScreenID())
- LEA.l _S152,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -70(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; HideScreen() ; Hide it
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -258(a5)
- ; Delay(10) ; Wait a little bit...
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; ShowScreen() ; and show it !
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -20(a5)
- ; PrintN("Screen dimensions: "+Str(ScreenWidth())+"x"+Str(ScreenHeight())+"x"+Str(ScreenDepth()))
- LEA.l _S153,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -30(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S154,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -80(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S155,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -90(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; PrintN("MouseX: "+Str(ScreenMouseX())+", MouseY: "+Str(ScreenMouseY())+", ScreenBar height: "+Str(ScreenBarHeight()))
- LEA.l _S156,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -66(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S157,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -56(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- LEA.l _S158,a0
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -100(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; If OpenScreen(1,320,200,3,0) ; Open a new screen, 320*200 - 8 colours
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w #320,d1
- EXT.l d1
- MOVE.w #200,d2
- EXT.l d2
- MOVEQ #3,d3
- MOVEQ #0,d4
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -184(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf42
- ; Delay(50)
- MOVEQ #50,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; CloseScreen(1)
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -344(a5)
- ; EndIf
- _EndIf42
- ; UseScreen(0)
- MOVEQ #0,d0
- MOVE.l 30(a4),a5
- JSR -14(a5)
- ; a = ObtainBestPen(255,255,255,0) ; Get the index of the pure white colour and lock it
- MOVE.w #255,d1
- EXT.l d1
- MOVE.w #255,d2
- EXT.l d2
- MOVEQ #0,d3
- MOVE.w #255,d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -228(a5)
- MOVE.w d0,4(a4)
- ; PrintN("Pure White colour found at colour: "+Str(a))
- LEA.l _S159,a0
- MOVE.l a3,-(a7)
- JSR PB_CopyString
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 26(a4),a5
- JSR -82(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l (a7)+,a3
- MOVE.l a3,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; ReleasePen(a) ; Release it to the system
- MOVE.w 4(a4),d0
- EXT.l d0
- MOVE.l 10(a4),a6
- MOVE.l 30(a4),a5
- JSR -110(a5)
- ; If FindScreen(1,"Workbench") ; Find the WB Screen
- MOVEM.l d1-d7/a0-a2,-(a7)
- LEA.l _S160,a0
- MOVEQ #1,d0
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -340(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- TST.l d0
- BEQ _EndIf43
- ; PrintN("Workbench screen found !")
- LEA.l _S161,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Print("Screen RastPort: ") : PrintNumber(ScreenRastPort())
- LEA.l _S162,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -46(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -94(a5)
- ; Print(", Screen ViewPort: ") : PrintNumberN(ScreenViewPort())
- LEA.l _S163,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -138(a5)
- MOVEM.l d1-d7/a0-a2,-(a7)
- MOVE.l 30(a4),a5
- JSR -38(a5)
- MOVEM.l (a7)+,d1-d7/a0-a2
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -54(a5)
- ; Delay(10) ; Flash the workbench screen !
- MOVEQ #10,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -160(a5)
- ; FlashScreen()
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -296(a5)
- ; Else
- JMP _EndIf44
- _EndIf43
- ; PrintN("Workbench screen isn't found ?!")
- LEA.l _S164,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; Endif
- _EndIf44
- ; EndIf
- _EndIf41
- ; PrintN("Press the mouse to quit")
- LEA.l _S165,a0
- MOVE.l a0,d1
- MOVE.l 18(a4),a6
- MOVE.l 22(a4),a5
- JSR -122(a5)
- ; MouseWait()
- MOVE.l 10(a4),a6
- MOVE.l 22(a4),a5
- JSR -156(a5)
- ; End
- _PB_EOP
- ;
- ; CallEndFuncs()
- ;
- MOVE.l 6(a4),d5
- MOVE.l 14(a4),a6
- MOVE.l 30(a4),a5
- JSR -290(a5)
- ;
- ; FreeStrings()
- ;
- MOVE.l (a7)+,a1
- JSR _PB_FreeVec
- MOVE.l (a4),a0
- MOVEA.l $4,a6
- JSR -702(a6)
- ;
- ; CloseAmigaLibs()
- ;
- MOVE.l 6(a4),a6
- MOVE.l 10(a4),a1
- JSR -414(a6)
- MOVE.l 14(a4),a1
- JSR -414(a6)
- MOVE.l 18(a4),a1
- JSR -414(a6)
- ;
- ; RemoveBank()
- ;
- MOVE.l a4,a1
- JSR -690(a6)
- ;
- ; End Of Program
- ;
- MOVEM.l (a7)+,d0-d7/a0-a6
- RTS
- ;
- _PB_AllocVec
- MOVE.l #65536,d1
- MOVE.l $4,a6
- JMP -684(a6)
- ;
- _PB_FreeVec
- MOVE.l $4,a6
- JMP -690(a6)
- ;
- PB_AllocString
- MOVE.l $4,a6
- MOVE.l a0,d2
- TST.l (a5)
- BEQ _Skip_Free
- MOVE.l (a5),a1
- MOVE.l a1,a0
- _PB_GetSize
- MOVE.b (a0)+,d0
- BNE _PB_GetSize
- SUB.l a1,a0
- MOVE.l a0,d0
- MOVE.l (a4),a0
- JSR -714(a6)
- _Skip_Free
- MOVE.l a3,d0
- SUB.l d2,d0
- ADDQ.l #1,d0
- MOVE.l (a4),a0
- JSR -708(a6)
- MOVE.l d0,a0
- MOVE.l d0,(a5)
- MOVE.l d2,a1
- _PB_CopyLoop
- MOVE.b (a1)+,(a0)+
- BNE _PB_CopyLoop
- MOVE.l d2,a3
- RTS
- ;
- PB_CopyString
- CMP.l #0,a0
- BEQ _PB_CopyStringEnd
- _PB_CopyStringLoop
- MOVE.b (a0)+,(a3)+
- BNE _PB_CopyStringLoop
- SUB.l #1,a3
- _PB_CopyStringEnd
- RTS
- ;
- _S1
- dc.b "",0
- _S2
- dc.b "Screen address: ",0
- _S3
- dc.b "Screen dimensions: ",0
- _S4
- dc.b "x",0
- _S5
- dc.b "x",0
- _S6
- dc.b "MouseX: ",0
- _S7
- dc.b ", MouseY: ",0
- _S8
- dc.b ", ScreenBar height: ",0
- _S9
- dc.b "Pure White colour found at colour: ",0
- _S10
- dc.b "Workbench",0
- _S11
- dc.b "Workbench screen found !",0
- _S12
- dc.b "Screen RastPort: ",0
- _S13
- dc.b ", Screen ViewPort: ",0
- _S14
- dc.b "Workbench screen isn't found ?!",0
- _S15
- dc.b "Press the mouse to quit",0
- _S16
- dc.b "",0
- _S17
- dc.b "Screen address: ",0
- _S18
- dc.b "Screen dimensions: ",0
- _S19
- dc.b "x",0
- _S20
- dc.b "x",0
- _S21
- dc.b "MouseX: ",0
- _S22
- dc.b ", MouseY: ",0
- _S23
- dc.b ", ScreenBar height: ",0
- _S24
- dc.b "Pure White colour found at colour: ",0
- _S25
- dc.b "Workbench",0
- _S26
- dc.b "Workbench screen found !",0
- _S27
- dc.b "Screen RastPort: ",0
- _S28
- dc.b ", Screen ViewPort: ",0
- _S29
- dc.b "Workbench screen isn't found ?!",0
- _S30
- dc.b "Press the mouse to quit",0
- _S31
- dc.b "",0
- _S32
- dc.b "Screen address: ",0
- _S33
- dc.b "Screen dimensions: ",0
- _S34
- dc.b "x",0
- _S35
- dc.b "x",0
- _S36
- dc.b "MouseX: ",0
- _S37
- dc.b ", MouseY: ",0
- _S38
- dc.b ", ScreenBar height: ",0
- _S39
- dc.b "Pure White colour found at colour: ",0
- _S40
- dc.b "Workbench",0
- _S41
- dc.b "Workbench screen found !",0
- _S42
- dc.b "Screen RastPort: ",0
- _S43
- dc.b ", Screen ViewPort: ",0
- _S44
- dc.b "Workbench screen isn't found ?!",0
- _S45
- dc.b "Press the mouse to quit",0
- _S46
- dc.b "",0
- _S47
- dc.b "Screen address: ",0
- _S48
- dc.b "Screen dimensions: ",0
- _S49
- dc.b "x",0
- _S50
- dc.b "x",0
- _S51
- dc.b "MouseX: ",0
- _S52
- dc.b ", MouseY: ",0
- _S53
- dc.b ", ScreenBar height: ",0
- _S54
- dc.b "Pure White colour found at colour: ",0
- _S55
- dc.b "Workbench",0
- _S56
- dc.b "Workbench screen found !",0
- _S57
- dc.b "Screen RastPort: ",0
- _S58
- dc.b ", Screen ViewPort: ",0
- _S59
- dc.b "Workbench screen isn't found ?!",0
- _S60
- dc.b "Press the mouse to quit",0
- _S61
- dc.b "",0
- _S62
- dc.b "Screen address: ",0
- _S63
- dc.b "Screen dimensions: ",0
- _S64
- dc.b "x",0
- _S65
- dc.b "x",0
- _S66
- dc.b "MouseX: ",0
- _S67
- dc.b ", MouseY: ",0
- _S68
- dc.b ", ScreenBar height: ",0
- _S69
- dc.b "Pure White colour found at colour: ",0
- _S70
- dc.b "Workbench",0
- _S71
- dc.b "Workbench screen found !",0
- _S72
- dc.b "Screen RastPort: ",0
- _S73
- dc.b ", Screen ViewPort: ",0
- _S74
- dc.b "Workbench screen isn't found ?!",0
- _S75
- dc.b "Press the mouse to quit",0
- _S76
- dc.b "",0
- _S77
- dc.b "Screen address: ",0
- _S78
- dc.b "Screen dimensions: ",0
- _S79
- dc.b "x",0
- _S80
- dc.b "x",0
- _S81
- dc.b "MouseX: ",0
- _S82
- dc.b ", MouseY: ",0
- _S83
- dc.b ", ScreenBar height: ",0
- _S84
- dc.b "Pure White colour found at colour: ",0
- _S85
- dc.b "Workbench",0
- _S86
- dc.b "Workbench screen found !",0
- _S87
- dc.b "Screen RastPort: ",0
- _S88
- dc.b ", Screen ViewPort: ",0
- _S89
- dc.b "Workbench screen isn't found ?!",0
- _S90
- dc.b "Press the mouse to quit",0
- _S91
- dc.b "",0
- _S92
- dc.b "Screen address: ",0
- _S93
- dc.b "Screen dimensions: ",0
- _S94
- dc.b "x",0
- _S95
- dc.b "x",0
- _S96
- dc.b "MouseX: ",0
- _S97
- dc.b ", MouseY: ",0
- _S98
- dc.b ", ScreenBar height: ",0
- _S99
- dc.b "Pure White colour found at colour: ",0
- _S100
- dc.b "Workbench",0
- _S101
- dc.b "Workbench screen found !",0
- _S102
- dc.b "Screen RastPort: ",0
- _S103
- dc.b ", Screen ViewPort: ",0
- _S104
- dc.b "Workbench screen isn't found ?!",0
- _S105
- dc.b "Press the mouse to quit",0
- _S106
- dc.b "",0
- _S107
- dc.b "Screen address: ",0
- _S108
- dc.b "Screen dimensions: ",0
- _S109
- dc.b "x",0
- _S110
- dc.b "x",0
- _S111
- dc.b "MouseX: ",0
- _S112
- dc.b ", MouseY: ",0
- _S113
- dc.b ", ScreenBar height: ",0
- _S114
- dc.b "Pure White colour found at colour: ",0
- _S115
- dc.b "Workbench",0
- _S116
- dc.b "Workbench screen found !",0
- _S117
- dc.b "Screen RastPort: ",0
- _S118
- dc.b ", Screen ViewPort: ",0
- _S119
- dc.b "Workbench screen isn't found ?!",0
- _S120
- dc.b "Press the mouse to quit",0
- _S121
- dc.b "",0
- _S122
- dc.b "Screen address: ",0
- _S123
- dc.b "Screen dimensions: ",0
- _S124
- dc.b "x",0
- _S125
- dc.b "x",0
- _S126
- dc.b "MouseX: ",0
- _S127
- dc.b ", MouseY: ",0
- _S128
- dc.b ", ScreenBar height: ",0
- _S129
- dc.b "Pure White colour found at colour: ",0
- _S130
- dc.b "Workbench",0
- _S131
- dc.b "Workbench screen found !",0
- _S132
- dc.b "Screen RastPort: ",0
- _S133
- dc.b ", Screen ViewPort: ",0
- _S134
- dc.b "Workbench screen isn't found ?!",0
- _S135
- dc.b "Press the mouse to quit",0
- _S136
- dc.b "",0
- _S137
- dc.b "Screen address: ",0
- _S138
- dc.b "Screen dimensions: ",0
- _S139
- dc.b "x",0
- _S140
- dc.b "x",0
- _S141
- dc.b "MouseX: ",0
- _S142
- dc.b ", MouseY: ",0
- _S143
- dc.b ", ScreenBar height: ",0
- _S144
- dc.b "Pure White colour found at colour: ",0
- _S145
- dc.b "Workbench",0
- _S146
- dc.b "Workbench screen found !",0
- _S147
- dc.b "Screen RastPort: ",0
- _S148
- dc.b ", Screen ViewPort: ",0
- _S149
- dc.b "Workbench screen isn't found ?!",0
- _S150
- dc.b "Press the mouse to quit",0
- _S151
- dc.b "",0
- _S152
- dc.b "Screen address: ",0
- _S153
- dc.b "Screen dimensions: ",0
- _S154
- dc.b "x",0
- _S155
- dc.b "x",0
- _S156
- dc.b "MouseX: ",0
- _S157
- dc.b ", MouseY: ",0
- _S158
- dc.b ", ScreenBar height: ",0
- _S159
- dc.b "Pure White colour found at colour: ",0
- _S160
- dc.b "Workbench",0
- _S161
- dc.b "Workbench screen found !",0
- _S162
- dc.b "Screen RastPort: ",0
- _S163
- dc.b ", Screen ViewPort: ",0
- _S164
- dc.b "Workbench screen isn't found ?!",0
- _S165
- dc.b "Press the mouse to quit",0
- ;
- PB_NullString
- dc.b 0
- Even
- ;
- _PBLibBank
- INCBIN "PureBasic:Compilers/ExecutableLib"
-